4 minutes
Level Up Your Jakarta EE Apps with Payara 7 and New Docker Images
We’re excited to share major updates around the Docker image story for the Payara Platform Community, aligned with our […]
This article provides a brief introduction to using Instaclustr’s managed PostgreSQL Database and Apache Kafka from Payara Cloud. It was created to assist entrants in the upcoming Payara Hackathon (you can still sign up!) spin-up and configure some potentially useful Instaclustr technologies for Jakarta EE applications.
Here are a few potential reasons:
Go to the “Free Trial” button on our https://instaclustr.com homepage, which takes you to: https://console2.instaclustr.com/signup
No payment details are required, it’s free, the trial is for the non-production SLA tier, a subset of our services and node sizes (only developer-sized nodes https://www.instaclustr.com/pricing/), for 30 days. After 30 days (if you haven’t signed up for a normal subscription) the clusters (and all the data) will be deleted.
There are four main steps: (1) Create a PostgreSQL cluster, (2) Allow access, (3) Get connection details and (4) configure Payara cloud to use the PostgreSQL cluster and test (not covered here, see relevant Payara documentation)
Instructions are here: https://www.instaclustr.com/support/documentation/postgresql/getting-started-with-postgresql/getting-started-with-postgres-creating-a-postgres-cluster/
Summary (unless otherwise instructed, don’t change default values):
1. “Create Cluster”
2. Enter Cluster Name
3. Application Selection: PostgreSQL
4. Provider: AWS
5. No Enterprise Features
Next, PostgreSQL Setup
6. Select: Version: PostgreSQL 14.10 (Any version 15+ will require changes to permissions, see below)
7. Replication Mode: ASYNCHRONOUS
Next
8. Data Centre Options: Data Centre: Select the region you would like to use.
Next, Next
9. Accept terms
10. Create Cluster
Your cluster will provision and become available after a few minutes.
For general instructions see here.
Click on your PostgreSQl cluster in the console, and then Firewall Rules.
Add these IPs to the firewall and Save:
20.50.49.180
20.62.214.88
These are documented here.
Documentation on connection to Instaclustr PostgreSQL with Java clients is here.
Specific configuration details are available for your PostgreSQL cluster under Connection Info.
Details include Public and Private IPs, Port number, Username, Password, and Database name.
The user, host, port and dbname are visible under the CLI example (dname=postgres).
Under the Java example you can see the JDBC URL, user and password.
The JDBC URL looks like this:
“jdbc:postgresql://IP:5432/postgres?targetServerType=primary”
If you choose Postgres version 15+, you might have to grant create permission on the schema public of your database to be able to execute statements.
See our documentation for further information.
In order to change permissions you will need to:
You may need a PostgreSQL JDBC driver: https://jdbc.postgresql.org/documentation/use/
You will need to configure the Payara Cloud data source to use the driver with the relevant connection details from 2.3, and test it.
Potentially relevant documentation. And a guide for PostgreSQL (sign up required).
The process for creating a Kafka Cluster is very similar, see documentation here.
1. Create Cluster
2. Enter Cluster Name
3. Application Selection = Apache Kafka
Next
4. Kafka Setup: Don’t change the defaults (in particular, don’t select “KRaft” mode, as you will be using the older ZooKeeper mode)
Next
5. Data Centre Options: Data Centre: Select desired region.
Next
6. Accept terms
7. Create Cluster
Wait a few minutes
Add these IPs to the firewall and Save:
20.50.49.180
20.62.214.88
Generic Kafka + Java specific instructions are here.
Specific Kafka connection information is available from the Connection Info tab.
This has Public IPs, User Authorization (Enabled), Encryption (Disabled), etc.
The default username/password are displayed (for 5 days only!). Detailed information is under Examples, Producer/Consumer, Java.
Producer configurations have:
bootstrap.servers=IP1:9092,IP2:9092,3IP3:9092
key.serializer=org.apache.kafka.common.serialization.StringSerializer
value.serializer=org.apache.kafka.common.serialization.StringSerializer
security.protocol=SASL_PLAINTEXT
sasl.mechanism=SCRAM-SHA-256
sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required
username=”user”
password=”password”;
Consumer configuration is identical with the addition of a consumer group.id (In Kafka, multiple consumers can consume from a topic, for increased concurrency, if they are in the same group):
group.id=my-group
Use the relevant information from 3.3. to configure Payara Cloud to use your Apache Kafka cluster. You can send and receive messages to/from Kafka using Cloud Connectors, JCA and MDBs. See this documentation.
Note that I couldn’t find where to configure Kafka user/password details.

Share:
4 minutes
We’re excited to share major updates around the Docker image story for the Payara Platform Community, aligned with our […]
5 minutes
Payara Cloud is becoming part of Payara Qube family of Java application deployment runtimes. This move reflects how the […]
6 minutes
If you’ve been living in the Spring ecosystem, you’re used to fast project setup. Spring Initializr gives you a […]